In many applications, data compression is used to reduce the amount data required to represent an image. Data compression is the re-encoding of data in a more compact form. If the compressed data can be expanded to replicate the original (uncompressed) data, the compression is said to be “lossless”. If this is not possible, the compression is said to be lossy. While lossless compression is preferable in principle, lossy compression can often achieve dramatically greater reductions in data. In the case of some images, dramatic reductions in data can be achieved using lossy compression with no perceptible loss of image quality. In other cases, even more dramatic reductions can be achieved with acceptable compromises in image quality.
In some applications, such as certain laser printing applications, there is insufficient memory to store a full-size uncompressed image. In such applications, the image must be compressed so that the entire compressed image fits within a predetermined memory size. There are, however, significant costs that can be incurred in using these compression techniques. For example, there can be substantial system overhead and time required to perform the compression and decompression operations.
It would therefore be desirable to have a relatively simple and inexpensive technique for compressing data.